home *** CD-ROM | disk | FTP | other *** search
/ Softdisk Supreme / Softdisk Supreme.iso / pc / DSK Files / 0-49 / SD006b.dsk / MASTERMIND.bas < prev    next >
BASIC Source File  |  2003-06-12  |  3KB  |  88 lines

  1. 1  REM **************************
  2. 2  REM  MASTERMIND BY D.CAICEDO
  3. 3  REM  **************************
  4. 10 N = 4
  5. 20 A$(1) = "MASTERMIND":A$(2) = "            BY":A$(3) = "D.CAICEDO"
  6. 30  HOME : FOR R = 1 TO N -1:A$ = A$(R)
  7. 40 A =  LEN(A$): IF  INT(A/2) = A/2 GOTO 60
  8. 50 A$ = A$ +" ":A =  LEN(A$)
  9. 60 H = A/2: SPEED= 200
  10. 70  FOR X = 1 TO H: VTAB R: PRINT  MID$ (A$,1,X): NEXT X
  11. 80  FOR Y = 1 TO (20 -H): VTAB R: HTAB Y: PRINT " " + LEFT$(A$,H): NEXT Y
  12. 90  FOR V = 1 TO (20 -H): VTAB R: HTAB (41 -H -V): PRINT  RIGHT$(A$,H) +" ": NEXT V
  13. 100  NEXT R: SPEED= 255: VTAB 20
  14. 110 N = 0
  15. 120  DIM G$(4,50),F$(4,50),W(50),V(50),CL(4,50)
  16. 130  DIM C$(6):C$(1) = "M":C$(2) = "B":C$(3) = "V":C$(4) = "W":C$(0) = "O"
  17. 140 C$(5) = "G":C$(6) = "T"
  18. 150  FOR J = 0 TO 4
  19. 160 X =  INT(6 * RND(J) +.5)
  20. 170 D$(J) = C$(X)
  21. 180  NEXT 
  22. 190  PRINT "THE OBJECT OF THE GAME IS TO"
  23. 191  PRINT "GUESS A SEQUENCE OF FIVE COLORS AS "
  24. 192  PRINT "SELECTED BY THE COMPUTER"
  25. 200  PRINT 
  26. 210  PRINT "COLOR CODES:"
  27. 211  PRINT 
  28. 220  PRINT "G=GREEN,T=TAN,W=WHITE,B=BLUE"
  29. 230  PRINT "O=ORANGE,V=VIOLET,M=MAGENTA"
  30. 240  PRINT "Z=QUIT AND SEE ANSWER"
  31. 241  PRINT "RERUN TO START NEW GAME"
  32. 250  PRINT "YELLOW BOXES SHOW NUMBER OF CORRECT"
  33. 260  PRINT "COLORS;WHITE BOXES SHOW NUMBER"
  34. 270  PRINT "OF CORRECT COLORS IN CORRECT POSITION"
  35. 271  PRINT 
  36. 281  PRINT "INPUT 5 COLOR CODES"
  37. 290  FOR I = 0 TO 4: INPUT A$:G$(I,N) = A$:F$(I,N) = A$: GOSUB 580: NEXT : GOSUB 700
  38. 299  PRINT "INPUT 5 COLOR CODES"
  39. 300  ONERR  GOTO 750
  40. 310 COUNT = 0
  41. 320  FOR I = 0 TO 4
  42. 330  IF G$(I,N) = D$(I)  THEN COUNT = COUNT +1
  43. 340  NEXT 
  44. 350 W(N) = COUNT
  45. 360  FOR J = 0 TO N
  46. 370  FOR I = 0 TO 4
  47. 380 AB = 0
  48. 390  GOSUB 460
  49. 400  IF AB  THEN CR = CR +1
  50. 410  NEXT 
  51. 420 V(N) = CR
  52. 430  GOSUB 500
  53. 440 N = N +1:CR = 0
  54. 450  GOTO 290:CR = 0
  55. 460  FOR K = 0 TO 4
  56. 470  IF D$(I) = G$(K,N)  THEN AB = 1:G$(K,N) = "S": GOTO 490
  57. 480  NEXT 
  58. 490  RETURN 
  59. 500  FOR M = 0 TO N
  60. 510  FOR K = 0 TO 4:X$ = F$(K,M): GOSUB 620
  61. 520 CL(K,M) = XI: NEXT : NEXT 
  62. 530  GR : FOR M = 0 TO N
  63. 540  FOR K = 0 TO 4: COLOR= CL(K,M): PLOT 10 +2 *K,35 -M *2: NEXT 
  64. 550  COLOR= 10: IF V(M) > <0  THEN  FOR Q = 1 TO V(M): PLOT 19 +2 *Q,35 -2 *M: NEXT : COLOR= 11
  65. 560  IF W(M) < >0  THEN  FOR R = 1 TO W(M): PLOT 29 +2 *R,35 -2 *M: NEXT 
  66. 570  NEXT : RETURN 
  67. 580  IF A$ = "Z"  THEN  TEXT : PRINT "THE ANSWERWAS:";: FOR I = 0 TO 4: PRINT D$(I);: NEXT 
  68. 581  PRINT 
  69. 590  RETURN 
  70. 600  PRINT 
  71. 610  END 
  72. 620  IF X$ = "T"  THEN XI = 8
  73. 630  IF X$ = "G"  THEN XI = 4
  74. 640  IF X$ = "O"  THEN XI = 9
  75. 650  IF X$ = "M"  THEN XI = 1
  76. 660  IF X$ = "V"  THEN XI = 3
  77. 670  IF X$ = "B"  THEN XI = 2
  78. 680  IF X$ = "W"  THEN XI = 15
  79. 690  RETURN 
  80. 700  GOSUB 500
  81. 710  IF A$ = "Z"  THEN  RETURN 
  82. 711  PRINT "INPUT Y TO ACCEPT OR"
  83. 712  PRINT "N IF YOU CHANGED YOUR MIND"
  84. 713  INPUT Z$
  85. 720  IF Z$ = "Y"  THEN  CALL  -912: CALL  -912: CALL  -912: RETURN 
  86. 730  POP 
  87. 740  GOTO 290
  88. 750  GOTO 310